#!/bin/bash

# LVGL汽车时速表 - 测试脚本
# 用于验证基本功能

echo "🧪 LVGL汽车时速表 - 功能测试"
echo "==============================="

# 检查程序是否存在
if [ ! -f "./speedometer" ]; then
    echo "❌ 错误: speedometer程序不存在，请先编译"
    echo "运行: make"
    exit 1
fi

echo "✅ 找到speedometer程序"

# 测试帮助信息
echo "📖 测试帮助信息..."
if ./speedometer -h > /dev/null 2>&1; then
    echo "✅ 帮助信息正常"
else
    echo "⚠️  帮助信息可能有问题"
fi

# 测试基本启动（非交互模式）
echo "🚀 测试程序启动..."
echo "注意: 程序将启动1秒后自动退出"

# 使用timeout命令限制运行时间
timeout 1s ./speedometer -s 60 > test_output.log 2>&1

if [ $? -eq 124 ]; then
    echo "✅ 程序正常启动（超时退出）"
    echo "📋 程序输出："
    head -5 test_output.log | sed 's/^/    /'
elif [ $? -eq 0 ]; then
    echo "✅ 程序正常启动并退出"
    echo "📋 程序输出："
    cat test_output.log | sed 's/^/    /'
else
    echo "❌ 程序启动可能有问题"
    echo "📋 错误输出："
    cat test_output.log | sed 's/^/    /'
fi

# 清理测试文件
rm -f test_output.log

echo ""
echo "🎯 测试结果总结："
echo "   - 如果看到'程序正常启动'，说明基本功能正常"
echo "   - 如果有LVGL相关错误，可能需要配置显示环境"
echo "   - 在Linux图形环境下运行效果最佳"
echo ""
echo "💡 完整测试请运行: ./speedometer"
echo "   使用Ctrl+C退出程序"

echo ""
echo "🏁 测试完成"